home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2003 #12 / Amiga Plus CD - 2003 - No. 12.iso / AmigaPlus / Scene / Magazine / Saxonia2 / articles / 036 < prev    next >
Text File  |  1980-01-03  |  3KB  |  50 lines

  1. Mysteries - Part two
  2. By Rumrunner/VOID
  3. [l
  4.  
  5. It's strange how sometimes the simplest and easiest explainable problem
  6. can seem so hard to find out. What I usually do is search in far more
  7. difficult places than necessary to find out what's wrong. I do this not
  8. only in my coding ventures but also when other things are concerned.
  9.  
  10. Let's take a look, I was working on the code for this issue of Saxonia,
  11. when I, after having run the code from the assembler suddenly saw that
  12. there was an error message on the screen. As everybody who uses Asm-One
  13. knows, this assembler prints out the state of all registers at programend.
  14. This time, it also told that an exeption had ocurred. I didn't know what
  15. had happened, but knowing that the computer could easily guru after such
  16. an instance, I saved the source at once, using a new filename so that the
  17. old file couldn't be destroyed. I then opened a CLI-window and executed
  18. memclear flush. This usually gurus the computer right away if anything
  19. special has happened, like system memorylists are trashed and so on. For
  20. those not familiar with the memclear utility, it performs the same as the
  21. avail command does when used with the flush parameter, that is, free memory
  22. used for libraries that no running program is using anymore. Try it after
  23. having run a MUI program, you will most likely see that you get one
  24. megabyte more free memory afterwards, I wonder if any MUI programmer ever
  25. closes opened libraries. Is it perhaps a bug in MUI itself. I really don't
  26. care much about this as I have never liked MUI, it's too slow and uses too
  27. much memory, but that's not the point here.
  28.  
  29. Back to the main issue then. Having used the memclear flush command, the
  30. system still worked out very good, so I continued working with the code.
  31. Running the program never gave the same exeption message again. That is,
  32. it didn't until a few days later. This time, I didn't care about it as I
  33. knew from the last time that nothing was wrong with the system. But then,
  34. as this happened a second time, I became a little curious. Looking a couple
  35. of lines higher up on the screen gave me the answer. There was no routine
  36. that stopped input handling, so even though only parts of the system are
  37. open while running Saxonia, the keypresses progresses through and seems to
  38. be stored when exiting. Then, some of them comes through to the OS.
  39. So what had happened was simply that the assembler, after getting back
  40. when I exited my code, had tried to execute a j560 command, which means
  41. jump to adress 560 and run from there. I don't remember exactly if it was
  42. 560, but at least it was a low adress. No wonder that the assembler gave
  43. a message about an exeption ocurring. I have to say that I'm really pleased
  44. that the Asm-One assembler has inbuilt exeption handlers, if it didn't I
  45. would most certainly have lost some of the updates to the code which I
  46. hadn't saved in a while.
  47.  
  48. Perhaps it's about time to stop keypresses coming through to the OS?
  49.